package com.yanqu.road.entity.drugstore;

import com.yanqu.road.entity.DataObject;
import com.yanqu.road.entity.FieldTypeAnnotation;
import com.yanqu.road.entity.DataStatus;

import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;

/**
 * @Description 药铺疑难杂症 玩家数据
 * @Author cwq
 * @Data 2022/4/8 18:25
 */
@FieldTypeAnnotation(tableName = "t_u_drug_store_hardcase_user", desc = "药铺 疑难杂症玩家数据")
public class DrugHardCaseUserData extends DataObject {
    @FieldTypeAnnotation(desc = "玩家id",update = true, select = true)
    private long userId;
    @FieldTypeAnnotation(desc = "状态 0未解锁 1解锁")
    private int status;
    @FieldTypeAnnotation(desc = "宣传次数")
    private int times;
    @FieldTypeAnnotation(desc = "宣传刷新时间")
    private int refreshTime;
    @FieldTypeAnnotation(desc = "当前的病例id")
    private int caseId;
    @FieldTypeAnnotation(desc = "当前的病例健康值")
    private int healthValue;
    @FieldTypeAnnotation(desc = "已回答的满分题目")
    private Map<Integer, Integer> fullMap = new ConcurrentHashMap<>();
    @FieldTypeAnnotation(desc = "已领取配方榜的病例集合")
    private List<Integer> receiveList = new ArrayList<>();

    public long getUserId() {
        return userId;
    }
    public void setUserId(long userId) {
        if (this.userId != userId) {
            this.userId = userId;
            setOp(DataStatus.Update);
        }
    }

    public int getStatus() {
        return status;
    }
    public void setStatus(int status) {
        if (this.status != status) {
            this.status = status;
            setOp(DataStatus.Update);
        }
    }

    public int getTimes() {
        return times;
    }
    public void setTimes(int times) {
        if (this.times != times) {
            this.times = times;
            setOp(DataStatus.Update);
        }
    }

    public int getRefreshTime() {
        return refreshTime;
    }
    public void setRefreshTime(int refreshTime) {
        if (this.refreshTime != refreshTime) {
            this.refreshTime = refreshTime;
            setOp(DataStatus.Update);
        }
    }

    public int getCaseId() {
        return caseId;
    }
    public void setCaseId(int caseId) {
        if (this.caseId != caseId) {
            this.caseId = caseId;
            setOp(DataStatus.Update);
        }
    }

    public int getHealthValue() {
        return healthValue;
    }
    public void setHealthValue(int healthValue) {
        if (this.healthValue != healthValue) {
            this.healthValue = healthValue;
            setOp(DataStatus.Update);
        }
    }

    public java.util.Map<java.lang.Integer, java.lang.Integer> getFullMap() {
        return fullMap;
    }
    public void setFullMap(java.util.Map<java.lang.Integer, java.lang.Integer> fullMap) {
        if (null == fullMap){
            return;
        }
        if (this.fullMap == null || !this.fullMap.equals(fullMap)) {
            this.fullMap = fullMap;
            setOp(DataStatus.Update);
        }
    }

    public java.util.List<java.lang.Integer> getReceiveList() {
        return receiveList;
    }
    public void setReceiveList(java.util.List<java.lang.Integer> receiveList) {
        if (null == receiveList){
            return;
        }
        if (this.receiveList == null || !this.receiveList.equals(receiveList)) {
            this.receiveList = receiveList;
            setOp(DataStatus.Update);
        }
    }
}
